match x:
    case Class(x=1, x=2): ...
    case [Class(x=1, x=2)]: ...
    case {"x": x, "y": Foo(x=1, x=2)}: ...
    case [{}, {"x": x, "y": Foo(x=1, x=2)}]: ...
    case Class(x=1, d={"x": 1, "x": 2}, other=Class(x=1, x=2)): ...
